/**
 * Minified by jsDelivr using Terser v3.14.1.
 * Original file: /npm/@cartok/hierarchy-select@1.1.14/build/hierarchy-select.js
 *
 * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
 */
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};function processElementOffset(e,t){e.offsetHeight+e.scrollTop<t.offsetTop+t.offsetHeight?e.scrollTop=t.offsetTop+t.offsetHeight-e.offsetHeight:e.scrollTop>t.offsetTop&&(e.scrollTop=t.offsetTop)}exports.default=function(e){var t=function(e,t,n){this.$element=$(e),this.options=$.extend({},$.fn.hierarchySelect.defaults,t),this.$button=this.$element.children("button"),this.$selectedLabel=this.$button.children(".selected-label"),this.$menu=this.$element.children(".dropdown-menu"),this.$menuInner=this.$menu.children(".inner"),this.$searchbox=this.$menu.find("input"),this.$hiddenField=this.$element.children("input"),this.previouslySelected=null,n instanceof Function&&n(),this.init()};t.prototype={constructor:t,init:function(){this.setWidth(),this.setHeight(),this.initSelect(),this.clickListener(),this.buttonListener(),this.searchListener()},initSelect:function(){var e=this.$menuInner.find("li[data-default-selected]:first");if(e.length)this.setValue(e.data("value"));else{var t=this.$menuInner.find("li:first");this.setValue(t.data("value"))}},isItemSelected:function(){var e=this.$menuInner.find("li"),t=!1;return e.each(function(e,n){(n=$(n)).hasClass("active")&&!n.hasClass("hidden")&&(t=!0)}),t},setWidth:function(){if("auto"===this.options.width)this.$menu.width();else this.options.width?this.$element.css("width",this.options.width):this.$element.css("min-width","42px")},setHeight:function(){this.options.height&&(this.$menu.css("overflow","hidden"),this.$menuInner.css({"max-height":this.options.height,"overflow-y":"auto"}))},getText:function(){return this.$selectedLabel.text()},getValue:function(){return this.$hiddenField.val()},getFirstVisibleItem:function(){return this.$menuInner.find("li").not(".hidden").first()},setValue:function(e){var t=this.$menuInner.children('li[data-value="'+e+'"]:first');this.setSelected(t)},enable:function(){this.$button.removeAttr("disabled")},disable:function(){this.$button.attr("disabled","disabled")},moveUp:function(){var e=this.$menuInner.find("li:not(.hidden,.disabled)"),t=this.$menuInner.find(".active"),n=e.index(t);void 0!==e[n-1]&&(this.$menuInner.find(".active").removeClass("active"),e[n-1].classList.add("active"),processElementOffset(this.$menuInner[0],e[n-1]))},moveDown:function(){var e=this.$menuInner.find("li:not(.hidden,.disabled)"),t=this.$menuInner.find(".active"),n=e.index(t);void 0!==e[n+1]&&(this.$menuInner.find(".active").removeClass("active"),e[n+1]&&(e[n+1].classList.add("active"),processElementOffset(this.$menuInner[0],e[n+1])))},selectItem:function(e){var t=this,n=void 0;if(e)n=e;else if((n=this.$menuInner.find(".active")).hasClass("hidden")||n.hasClass("disabled"))return;!0===t.options.returnAfterSelect||setTimeout(function(){t.$button.focus()},0),n&&this.setSelected(n)},setSelected:function(e){if(e.length){var t=e.children("a").text(),n=e.data("value");this.$selectedLabel.html(t),this.$hiddenField.val(n),this.$menuInner.find(".active").removeClass("active"),e.addClass("active")}},triggerSelect:function(e){if((void 0!==e||!(e=this.$menuInner.find(".active")).hasClass("hidden")&&!e.hasClass("disabled"))&&e.length){var t=parseInt(e.attr("data-value")),n=e.children("a").text();this.$button.dropdown("toggle"),this.$element.trigger("change",{id:t,text:n})}},clickListener:function(e){var t=this;this.$element.on("show.bs.dropdown",function(){var e=$(this);if(!0===t.options.togglePosition){var n=$(window).scrollTop(),i=$(window).height(),s=e.offset().top-n,o=i-s-e.outerHeight(),l=t.$menu.outerHeight(!0);o<l&&s>l&&e.toggleClass("dropup",!0)}var r=t.$menuInner.find(".active");r.length&&setTimeout(function(){var e=r[0],t=r[0].parentNode;t.scrollTop<=e.offsetTop&&t.scrollTop+t.clientHeight>e.offsetTop+e.clientHeight||(e.parentNode.scrollTop=e.offsetTop)},0)}),this.$element.on("shown.bs.dropdown",function(){t.previouslySelected=t.$menuInner.find(".active"),t.$searchbox.focus()}),this.$element.on("hidden.bs.dropdown",function(){t.$element.toggleClass("dropup",!1)}),this.$menuInner.on("click","li a",function(e){e.preventDefault();var n=$(this).parent();n.hasClass("disabled")?e.stopPropagation():(t.setSelected(n),t.triggerSelect(n))})},searchListener:function(){var e=this;this.options.search?(this.$searchbox.on("keydown",function(t){switch(t.keyCode){case 9:t.preventDefault(),t.stopPropagation(),e.$menuInner.click(),e.$button.focus();break;case 13:if(e.isItemSelected())e.selectItem();else{var n=e.getFirstVisibleItem();e.selectItem(n)}break;case 27:t.preventDefault(),t.stopPropagation(),e.options.keepFocused&&e.$button.focus(),e.$button.dropdown("toggle");break;case 38:t.stopPropagation(),t.preventDefault(),e.moveUp();break;case 40:t.stopPropagation(),t.preventDefault(),e.moveDown()}}),this.$searchbox.on("input propertychange",function(t){t.preventDefault();var n=e.$searchbox.val().toLowerCase(),i=e.$menuInner.find("li");0===n.length?i.each(function(){var e=$(this);e.toggleClass("disabled",!1),e.toggleClass("hidden",!1)}):i.each(function(){var t=$(this);-1!=t.children("a").text().toLowerCase().indexOf(n)?(t.toggleClass("disabled",!1),t.toggleClass("hidden",!1),e.options.hierarchy&&function(e){for(var t=e,n=t.data("level");"object"==(void 0===t?"undefined":_typeof(t))&&t.length>0&&n>1;)n--,(t=t.prevAll('li[data-level="'+n+'"]:first')).hasClass("hidden")&&(t.toggleClass("disabled",!0),t.removeClass("hidden"))}(t)):(t.toggleClass("disabled",!1),t.toggleClass("hidden",!0))})})):this.$searchbox.parent().toggleClass("hidden",!0)},buttonListener:function(){var e=this;this.$element.on("keydown",function(t){13===t.keyCode&&(t.preventDefault(),e.selectItem(),e.triggerSelect())})}};e.fn.hierarchySelect=function(e,n){var i=Array.prototype.slice.call(arguments,1),s=void 0,o=this.each(function(){var o=$(this),l=o.data("HierarchySelect"),r="object"==(void 0===e?"undefined":_typeof(e))&&e;l||o.data("HierarchySelect",l=new t(this,r,n)),"string"==typeof e&&(s=l[e].apply(l,i))});return void 0===s?o:s},e.fn.hierarchySelect.defaults={width:"auto",height:"208px",hierarchy:!0,search:!0,togglePosition:!0,returnAfterSelect:!0,selectFirstOnEnter:!0,keepFocused:!0},e.fn.hierarchySelect.Constructor=t};
//# sourceMappingURL=/sm/db45d457bc5f4409d021a12bd44d29d7dbaed7fe9e791ad6764b58f0f10204f9.map
